1. Field of the Invention
The present invention relates to a character string outputting method and an apparatus capable of arranging a desirable character string within an arbitrary designated character string configuration region, which is used in a word processor, a personal computer and the like.
2. Description of the Prior Art
In the conventional character string outputting apparatuses such as word processors and personal computers, when a portion of a text to be outputted is emphasized, there are typically two character emphasizing methods. That is, in one character emphasizing method, a desirable character string of the text is emphasized by using predetermined manners such as meshing, reversing, underlining, inclining, and rotating processes. In the other character emphasing method, the desirable character string is arranged along a preselected line segment, so that this character string is arranged in the form of an arc shape, or a waving shape.
However, in accordance with the these conventional character string emphasizing methods, there are several problems that the character string could be outputted only by such preselected outputting forms, and therefore a degree of freedom in emphasizing of character strings is very low and various demands by users could not be acceptable with respect to the emphasizing manner.
For instance, to emphasize an arbitrary character string, when the magnifications of the respective characters for constituting this character string are continuously changed, and then the dimensions or heights of these characters from the top position until the end position are gradually reduced, it would be possible to output such a character string which extends back a long way. This may achieve very significant effects to emphasize this character string.
In the conventional method to achieve such significant emphasizing effects, the magnifications of the respective characters must be set one by one as to both the vertical direction and the horizontal direction. This magnification setting manner would cause very cumbersome workloads to users. In other words, every user could hardly express such a character string which extends back a long way with having a natural smoothing balance.
To overcome the above-described conventional problem about the character emphasizing method, the Assignee of the present Patent Application has filed one solution method as U.S. patent application Ser. No. 113,835 (filed on Aug. 30, 1993). In this solution method, the character frame used to allocate the respective characters contained in the desirable character string into an arbitrary designated character string configuration region, is determined by substituting the parameters for the character string configuration function. Thus, these characters may be arranged within this predetermined character frame.
Now, a very basic idea of the above-described character string outputting apparatus similarly assigned to this Assignee will be briefly explained with reference to FIG. 8. In FIG. 8, there is schematically shown such a case that 10 characters of "A" to "J" are employed as a desirable character string to be outputted, and two straight lines are entered so as to specify each of the character string arranging regions. In this case, the character string arranging region is specified by such an area which is sandwiched by a straight line P(t) for connecting P(0) to P(10) and a straight line Q(t) for connecting Q(0) to Q(10). These P(t) and Q(t) are called a "character string configuration function". Then, the character frames are determined which are used to specify the arranging region for each of the characters by substituting the suitable parameters for these character string configuration functions P(t) and Q(t).
That is, as to the two straight lines, assuming now that the points on these straight lines are expressed by using the proper parameters, the parameter about the starting edge of the straight line is set to "0", and the parameter about the ending edge thereof is set to "1", other arbitrary parameters appearing on the straight line may be represented as numeral values below 1. In other words, when the number of characters for constituting the character string is 10, "1" is divided by "10" to obtain "0.1", so that these intermediate parameters "t" may be calculated as follows: t="0.0", "0.1", "0.2", --- , "0.8", "0.9" and "1.0".
As described above the coordinate values of the character frames capable of storing the respective characters are calculated by substituting the thus calculated parameters "t" for the character string configuration functions P(t) and Q(t) corresponding to the two straight lines. This character frame corresponds to a rectangle surrounded by the two straight lines in which two sectioning lines for sectioning the right-sided and left-sided characters are employed as the right and left edges. When the calculation is made of the coordinate values of this character frame, it is required not to establish spaces between the adjoining characters. Then, the respective characters for constituting the character string to be outputted are arranged in such a manner that these characters can be stored within the corresponding character frames.
As a result, such a character string which owns varieties of shapes, or which extends back a long way with better balance conditions, otherwise which wholly owns natural smoothing conditions can be simply produced at high speed.
Nevertheless, this type of character string outputting apparatus may be more or less improved in view of a proportional spacing font. That is, in this prior apparatus, such an initial condition is necessarily required that the sizes or dimensions of the respective characters for constituting the character string are made constant. For instance, since it is so designed as the initial condition that the coordinate series of the respective characters are such a coordinate system constructed of 100.times.100 along the horizontal and vertical directions, such a font of a character string font body sizes (widths of characters) are different from each other cannot be outputted with a condition of proportional spacing. That is, a proportional spacing font is not available in this prior outputting apparatus.
This requirement to output such a proportional spacing font will now be described with reference to a concrete example shown in FIG. 9. That is, FIG. 9 schematically represents an example of the generic structure about a proportional spacing font. This font is represented such that the coordinate series indicative of the contour of this character is recited in the coordinate system of 100.times.100 in the horizontal and vertical directions. Also, this font owns such a definition as the left side bearing "a" and the font body size "b". The left side bearing is given to the portion overlapped with the adjoining characters, whereas the font body size corresponds to the character width occupied by this character. In this example, the left side bearing "a" is defined as follows: a=100 meshes for a character "W", a=35 meshes for a character "I", and a=15 meshes for a character "L". Furthermore, the font body size "b" is defined as follows: b=80 meshes for the character "W", b=30 meshes for the character "I", and b=65 meshes for the character "L".
FIG. 10A schematically represents such a condition achieved before the character arrangement when the three characters of W, I, L are proportionally spaced, and FIG. 10B schematically indicate such a condition achieved after the character arrangement. First, the character of "W" is arranged. In this case, the positional pointer is updated by the font body size (b=80) of this character "W". Then, the subsequent character "I" is arranged at the position defined by subtracting the left side bearing (a=35) of this character "I" from this updated position. Next, the positional pointer is moved along the right direction by the font body size (b=30) of this character "I". The remaining character of "L" is arranged at the position defined by subtracting the left side bearing (a=15) of the character "L" from the present position (80+30=110). In this case, the total character width of this character string "W, I, L" becomes 175, so that this character string may be properly arranged without making unnecessary spaces.
As described above, in such a proportional spacing font, since the respective character widths are different from each other for the respective characters, if the parameters of the character string configuration functions would be calculated in the arithmetic series manner based upon the character quantity of the desirable character string even in the proportional spacing font, then the character string could not allocated into the character string configuration region with realizing such a proportional spacing condition. As a result, it is practically difficult to obtain such a character string in a better balance with having natural smoothing conditions.
Even when the parameters would be calculated by accumulating the font body sizes and then the font would be simply stored in the character frames calculated by substituting the resultant parameters for the character string configuration function, the font of the character string could not be correctly represented with keeping the proportional spacing condition. That is, the font body sizes would be compressed as shown in FIG. 11A.